﻿#region << 版 本 注 释 >>
/*----------------------------------------------------------------
// Copyright (C) 2021 kingerrobot
// 版权所有。 
//
// 文件名：BProdSkuProduct
// 文件功能描述：
//
// 创建者：名字 (zzl)
// 时间：2021/12/9 8:33:13
//
// 修改人：
// 时间：
// 修改说明：
// 版本：V1.0.0
//----------------------------------------------------------------*/
#endregion
using System.Threading.Tasks;

namespace KingerRobot.MexicoSailunMDC.SpiService;

interface IWcsScanner
{

    //UpdateWcsScannerStatusById
    //    GetFirstNoTaskWcsScannerByStartLoc
    //UpdateWcsScannerErrorById



    /// <summary>
    /// 添加扫描
    /// </summary>
    /// <param name="scannerLocId"></param>
    /// <param name="productCode"></param>
    /// <param name="scannerCount"></param>
    /// <param name="remark"></param>
    /// <param name="priority"></param>
    /// <param name="heightType"></param>
    /// <returns></returns>
    int AddWcsScanner(long scannerLocId, string productCode, int scannerCount, string remark, int priority);

    /// <summary>
    /// 通过扫描仪获取未生成任务的
    /// </summary>
    /// <param name="startLoc"></param>
    /// <returns></returns>
    POWcsScanner GetFirstNoTaskWcsScannerByStartLoc(long startLoc);

    POWcsScanner GetWcsScannerByProduct(long startLoc,string productCode);

    /// <summary>
    /// 修改失败原因
    /// </summary>
    /// <param name="id"></param>
    /// <param name="errorCode"></param>
    /// <returns></returns>
    int UpdateWcsScannerErrorById(long id, long errorCode);


    int UpdateWcsScannerStatusById(long id, int status, string remarkMemo, long taskId = 0);

    /// <summary>
    /// 通过任务id删除扫描记录
    /// </summary>
    /// <param name="taskId"></param>
    /// <returns></returns>
    int DeleWcsScannerByTaskId(long taskId, string remark);

    int InsertWcsScannerAbnormal(long locId, string remark, string productCode);

   
}
